package com.sjgs.gis.service.dto;

import com.sjgs.gis.service.dto.enumeration.PluginStatus;
import io.swagger.annotations.ApiModel;


import java.io.Serializable;
import java.time.Instant;

/**
 * A DTO for the {@link com.sjgs.gis.domain.NodePlugin} entity.
 */
@ApiModel(description = "NodePlugin entity.\n@author The JHipster team.")
public class NodePluginDTO implements Serializable {
    
    private Long id;

    
    private Long pluginId;

    private String data;

    private String sql;

    private Instant installTime;

    private PluginStatus status;


    private Long nodeId;
    
    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getPluginId() {
        return pluginId;
    }

    public void setPluginId(Long pluginId) {
        this.pluginId = pluginId;
    }

    public String getData() {
        return data;
    }

    public void setData(String data) {
        this.data = data;
    }

    public String getSql() {
        return sql;
    }

    public void setSql(String sql) {
        this.sql = sql;
    }

    public Instant getInstallTime() {
        return installTime;
    }

    public void setInstallTime(Instant installTime) {
        this.installTime = installTime;
    }

    public PluginStatus getStatus() {
        return status;
    }

    public void setStatus(PluginStatus status) {
        this.status = status;
    }

    public Long getNodeId() {
        return nodeId;
    }

    public void setNodeId(Long nodeId) {
        this.nodeId = nodeId;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) {
            return true;
        }
        if (!(o instanceof NodePluginDTO)) {
            return false;
        }

        return id != null && id.equals(((NodePluginDTO) o).id);
    }

    @Override
    public int hashCode() {
        return 31;
    }

    // prettier-ignore
    @Override
    public String toString() {
        return "NodePluginDTO{" +
            "id=" + getId() +
            ", pluginId=" + getPluginId() +
            ", data='" + getData() + "'" +
            ", sql='" + getSql() + "'" +
            ", installTime='" + getInstallTime() + "'" +
            ", status='" + getStatus() + "'" +
            ", nodeId=" + getNodeId() +
            "}";
    }
}
